package com.qsign.sfrz_android.utils;

import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;

import com.alibaba.fastjson.JSONObject;
import com.allenliu.versionchecklib.callback.APKDownloadListener;
import com.allenliu.versionchecklib.v2.AllenVersionChecker;
import com.allenliu.versionchecklib.v2.builder.DownloadBuilder;
import com.allenliu.versionchecklib.v2.builder.NotificationBuilder;
import com.allenliu.versionchecklib.v2.builder.UIData;
import com.allenliu.versionchecklib.v2.callback.ForceUpdateListener;
import com.allenliu.versionchecklib.v2.callback.RequestVersionListener;
import com.qsign.sfrz_android.BuildConfig;

import com.qsign.sfrz_android.base.MyApplication;
/**
 * Created by Administrator on 2018/10/26 0026.
 */

public class UpdateUtils {
        public static void checkUpload(final  Context context)
        {
            String updateurl="http://221.6.10.202:9090/815374972/appsjson/raw/master/4scar/app.version";
//            NetWorkUtil.GET(updateurl, null, context,new StringCallback(){
//                @Override
//                public void onSuccess(Response<String> response) {
//                    String s = response.body();
//                    if(s.length()>0){
//                        JSONObject returnobject=JSONObject.parseObject(s);
//                        JSONObject updatejson=null;
//                        if (BuildConfig.API_ENV == 1){//测试环境
//                            updatejson=returnobject.getJSONObject("debug");
//                        }else{//正式环境
//                            updatejson=returnobject.getJSONObject("release");
//                        }
//                        if(updatejson!=null){
//                            Gson gson = new Gson();
//                            final UpdateBean userBean = gson.fromJson(updatejson.toJSONString(), UpdateBean.class);
//                            if (ToolUtils.getVersionCode(context) != 0
//                                    && userBean.getAndroidversionCode() > ToolUtils.getVersionCode(context)) {
//                                runOnUiThread(new Runnable() {
//                                    @Override
//                                    public void run() {
//                                        UIData uiData = UIData.create();
//                                        uiData.setTitle(userBean.getAndroidversionName());
//                                        uiData.setDownloadUrl(userBean.getAndroidUrl());
//                                        uiData.setContent(userBean.getAndroidversionNote());
//                                        if(userBean.isAndroidForced()){
//                                            uiData.setForce(true);
//                                        }else{
//                                            uiData.setForce(false);
//                                        }
//                                        DownloadBuilder builder= AllenVersionChecker
//                                                .getInstance()
//                                                .downloadOnly(uiData);
//                                        //  builder.setCustomVersionDialogListener(createCustomDialog());
//                                        builder.setNotificationBuilder(createCustomNotification());
//                                        builder.setShowNotification(true);
//                                        builder.setForceRedownload(true);
//                                        builder.setShowDownloadingDialog(false);
//                                        if(userBean.isAndroidForced()){//强制更新需要等待
//
//                                            builder.setApkDownloadListener(new APKDownloadListener() {
//                                                KProgressHUD hud=null;
//                                                @Override
//                                                public void onDownloading(int progress) {
//                                                    if(hud==null){
//                                                        hud = KProgressHUD.create(AppManager.getAppManager().currentActivity())
//                                                                .setStyle(KProgressHUD.Style.ANNULAR_DETERMINATE)
//                                                                .setLabel("正在更新")
//                                                                .setCancellable(false)
//                                                                .setMaxProgress(100).show();
//                                                    }
//                                                    hud.setProgress((int) progress);
//                                                }
//
//                                                @Override
//                                                public void onDownloadSuccess(File file) {
//                                                    hud.dismiss();
//                                                }
//
//                                                @Override
//                                                public void onDownloadFail() {
//                                                }
//                                            });
//                                        }
//
//                                        builder.executeMission(AppManager.getAppManager().currentActivity());
//                                    }
//                                });
//
//                            }
//                        }
//                    }
//                }
//            } );
        }
    private static NotificationBuilder createCustomNotification() {
        String appname="";
        try {
            PackageManager packageManager = MyApplication.getInstance().getApplicationContext().getPackageManager();
            appname=String.valueOf(packageManager.getApplicationLabel(MyApplication.getInstance().getApplicationContext().getApplicationInfo()));
        } catch (Exception e) {
            e.printStackTrace();
        }
        return NotificationBuilder.create()
                .setRingtone(true)
                // .setIcon(R.mipmap.dialog4)
                .setTicker(appname)
                .setContentTitle(appname)
                .setContentText("%d%%/100%%");
    }
}
